package com.huawei.crm.service;

import com.github.pagehelper.PageInfo;
import com.huawei.crm.domain.Employee;
import com.huawei.crm.query.EmployeeQueryObject;
import com.huawei.crm.query.IDDTO;
import org.apache.poi.ss.usermodel.Workbook;

import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;

public interface IEmployeeService extends BaseService<Employee, Long> {

    void saveOrUpdate(Employee entity, Long[] roleIds);

    void delete(Long id);

    void batchDelete(Long[] ids);

    Employee get(Long id);

    List<Employee> listAll();

    PageInfo<Employee> query(EmployeeQueryObject qo);

    Workbook exportXls();

    void improtXls(InputStream inputStream) throws IOException;

    List<Employee> listEmpsByRoleSns(String... roleSns);

    void exportXlsx(HttpServletResponse response);

    List<File> exportAllXls(HttpServletResponse response, IDDTO idDTO) throws IOException;

    void batchSave();

    void forSave();

}
